package com.ruoyi.zsyh.service.impl;

import java.util.List;
import java.util.ArrayList;
import com.ruoyi.common.core.domain.Ztree;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.zsyh.mapper.SysDtAreaAgentMapper;
import com.ruoyi.zsyh.domain.SysDtAreaAgent;
import com.ruoyi.zsyh.service.ISysDtAreaAgentService;
import com.ruoyi.common.core.text.Convert;

/**
 * 区域人口分布Service业务层处理
 * 
 * @author yuexl
 * @date 2024-10-17
 */
@Service
public class SysDtAreaAgentServiceImpl implements ISysDtAreaAgentService 
{
    @Autowired
    private SysDtAreaAgentMapper sysDtAreaAgentMapper;

    /**
     * 查询区域人口分布
     * 
     * @param id 区域人口分布ID
     * @return 区域人口分布
     */
    @Override
    public SysDtAreaAgent selectSysDtAreaAgentById(String id)
    {
        return sysDtAreaAgentMapper.selectSysDtAreaAgentById(id);
    }

    @Override
    public SysDtAreaAgent selectAllAreaAgentById(String id) {
        return sysDtAreaAgentMapper.selectAllAreaAgentById(id);
    }

    /**
     * 查询区域人口分布列表
     * 
     * @param sysDtAreaAgent 区域人口分布
     * @return 区域人口分布
     */
    @Override
    public List<SysDtAreaAgent> selectSysDtAreaAgentList(SysDtAreaAgent sysDtAreaAgent)
    {
        return sysDtAreaAgentMapper.selectSysDtAreaAgentList(sysDtAreaAgent);
    }

    @Override
    public List<SysDtAreaAgent> selectSysDtAreaAgentSecondList(SysDtAreaAgent sysDtAreaAgent) {
        return sysDtAreaAgentMapper.selectSysDtAreaAgentSecondList(sysDtAreaAgent);
    }

    @Override
    public List<SysDtAreaAgent> selectSysDtAreaAgentThirdList(SysDtAreaAgent sysDtAreaAgent) {
        return sysDtAreaAgentMapper.selectSysDtAreaAgentThirdList(sysDtAreaAgent);
    }

    /**
     * 新增区域人口分布
     * 
     * @param sysDtAreaAgent 区域人口分布
     * @return 结果
     */
    @Override
    public int insertSysDtAreaAgent(SysDtAreaAgent sysDtAreaAgent)
    {
        return sysDtAreaAgentMapper.insertSysDtAreaAgent(sysDtAreaAgent);
    }

    /**
     * 修改区域人口分布
     * 
     * @param sysDtAreaAgent 区域人口分布
     * @return 结果
     */
    @Override
    public int updateSysDtAreaAgent(SysDtAreaAgent sysDtAreaAgent)
    {
        return sysDtAreaAgentMapper.updateSysDtAreaAgent(sysDtAreaAgent);
    }

    /**
     * 删除区域人口分布对象
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    @Override
    public int deleteSysDtAreaAgentByIds(String ids)
    {
        return sysDtAreaAgentMapper.deleteSysDtAreaAgentByIds(Convert.toStrArray(ids));
    }

    /**
     * 删除区域人口分布信息
     * 
     * @param id 区域人口分布ID
     * @return 结果
     */
    @Override
    public int deleteSysDtAreaAgentById(String id)
    {
        return sysDtAreaAgentMapper.deleteSysDtAreaAgentById(id);
    }

    /**
     * 查询区域人口分布树列表
     * 
     * @return 所有区域人口分布信息
     */
    @Override
    public List<Ztree> selectSysDtAreaAgentTree()
    {
        List<SysDtAreaAgent> sysDtAreaAgentList = sysDtAreaAgentMapper.selectSysDtAreaAgentList(new SysDtAreaAgent());
        List<Ztree> ztrees = new ArrayList<Ztree>();
        for (SysDtAreaAgent sysDtAreaAgent : sysDtAreaAgentList)
        {
            Ztree ztree = new Ztree();
            ztree.setId(Long.parseLong(sysDtAreaAgent.getId()));
            ztree.setpId(Long.parseLong(sysDtAreaAgent.getAreaParentId()));
            ztree.setName(sysDtAreaAgent.getAreaName());
            ztree.setTitle(sysDtAreaAgent.getAreaName());
            ztrees.add(ztree);
        }
        return ztrees;
    }

    public List<SysDtAreaAgent> selectAreaAllByPIds(SysDtAreaAgent sysDtAreaAgent){
        return sysDtAreaAgentMapper.selectAreaAllByPIds(sysDtAreaAgent);
    }
}
